perm filename GEOMES.HDR[GEM,HE] blob
sn#416077 filedate 1977-09-21 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00008 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002
C00004 00003 COMMENT EUCLID
C00005 00004 COMMENT WINGED EDGE PRIMITIVES
C00007 00005 COMMENT EULER PRIMITIVES
C00008 00006 COMMENT EXTERNAL DECLARATIONS FOR DISPLAY ROUTINES
C00009 00007 COMMENT GEM-NODE NAMES FOR LINKS AND DATA
C00011 00008
C00013 ENDMK
C⊗;
REQUIRE "GEOMED.REL[SAI,BGB]" LOAD_MODULE;
REQUIRE "GEOMES.REL[SAI,BGB]" LOAD_MODULE;
REQUIRE "UTILTY.REL[SAI,BGB]" LOAD_MODULE;
REQUIRE "EULER.REL[SAI,BGB]" LOAD_MODULE;
REQUIRE "EUCLID.REL[SAI,BGB]" LOAD_MODULE;
REQUIRE "OCCULT.REL[SAI,BGB]" LOAD_MODULE;
REQUIRE "BIN.REL[SAI,BGB]" LOAD_MODULE;
REQUIRE "⊂⊃⊂⊃" DELIMITERS;
DEFINE $UBR=⊂EXTERNAL SIMPLE INTEGER PROCEDURE⊃;
COMMENT BASIC GEOMED, IO AND DISPLAY;
EXTERNAL INTEGER UNIVERSE;
INTERNAL INTEGER RESULT;
$UBR MKUNIV;
$UBR GEOMED;
$UBR GEODPY;
$UBR SHOW1(INTEGER WINDOW,GLASS);
$UBR SHOW2(INTEGER WINDOW,GLASS);
$UBR SHOW3(INTEGER WINDOW,GLASS);
$UBR PPROJ(INTEGER CAMERA,WORLD);
$UBR INGEM(STRING FILNAM);
$UBR INB3D(STRING FILNAM);
$UBR INCAM(STRING FILNAM);
$UBR SETFOC(REAL FMM);
$UBR FDNAME(STRING FILNAM);
$UBR OUTGEM(STRING FILNAM;INTEGER B);
$UBR OUTB3D(STRING FILNAM;INTEGER B);
$UBR OUTCAM(STRING FILNAM);
$UBR PLOTO(STRING FILNAM);
COMMENT EUCLID;
$UBR APTRAM(INTEGER Q,ET);
$UBR INTRAM(INTEGER ET);
$UBR TRANSL(INTEGER Q;REAL X,Y,Z);
$UBR ROTATE(INTEGER Q;REAL X,Y,Z);
$UBR SHRINK(INTEGER Q;REAL X,Y,Z);
$UBR MKTRMA(REAL P,T,S);
$UBR MKTRMF(INTEGER F);
$UBR MKTRMV(REAL WX,WY,WZ);
$UBR MKROTV(INTEGER TRAM);
$UBR MKTRAM;
EXTERNAL SIMPLE REAL PROCEDURE DISTAN(INTEGER Q1,Q2);
EXTERNAL SIMPLE REAL PROCEDURE DETERM(INTEGER Q);
2∞>lj⊗:Q¬:&:≡,!α⊗∩<)αBJLj&R&4*Ml4PI∩V
∩α6.:|"∃"&u"⊗≡⊗∩αRfAKX%∩V∃⊃α.2tz∩∃"LrR⊗≡-⊃α:>$)%l4PI∩V
∩α6.∞j⊗J¬DJ:R⊗<*Iα↑⎇∩2⊃%XI∩V
∩α6.↑⎇∩2⊃lhP%∩V∃⊃α6.<J:∩>:B&:R,:⊗Iα≤
6⊗J
b↑&:$z]%lhP%∩V∃⊃α6.∩B&:R,:⊗Iα<zJ2⊃KX%∩V∃⊃α.2∩B&:R,:⊗Iα∀r⊗]%Xh(%∩,∩Iα.d∩~⊗YDJ:R⊗<*Iα
t*]%lJ"V
I∧j.
~3X4(%%*
Iα\J21"LrR⊗≡-⊃α
:-9%l4PI∩V
∩α6.→DJ:R⊗<*Iα~t*]%lHI∩V
∩α.2→DJ:R⊗<*Iα~t*]%lhP%∩V∃⊃α6.*B&:R,:⊗Iα,r⊗]%XH%∩V∃⊃α.2*B&:R,:⊗Iα,r⊗]%Xh(%∩,∩Iα6]1"&:$*≡⊗I¬2:⊗]KX$%∩,∩Iα.e1"&:$*≡⊗I¬2:⊗]KX4(%%*
Iα<J:≥"LrR⊗≡-⊃α∃Ed)I%lJ"V
I∧b&:.,!"&:$*≡⊗I¬ E2E∩Il4(J"V
I∧*∞]"LrR⊗≡-⊃αEEe I%lJ"V
I∧*∞∞]DJ:R⊗<*IαE
bEI%Xh(%∩,∩Iα>$B⊗I"LrR⊗≡-⊃αEEe I%lJ"V
I∧∩≡⊗QDJ:R⊗<*IαEKX4(%%*
Iα4~]"&u"⊗≡⊗∩α∃2→KX$%∩,∩IαZ≤~]"&u"⊗≡⊗∩α∃2→KX4(%%*
Iα4~]"&u"⊗≡⊗∩α∃2YKX$%∩,∩Iα~≤~]"&u"⊗≡⊗∩α∃2YKX4(%%*
Iα∀"⊗Q"LrR⊗≡-⊃αE%XH%∩V∃⊃α
ε%!"&:$*≡⊗I¬ E2E∩Il4(hP2∞>lj⊗:Q∧*V2⊗∩αBJ&lJR&Z-→l4(J"V
I∧J:Z⊗∃!"&:$*≡⊗I∧)%l$J"V
I∧*Z⊗J"B&:R,:⊗Iα∩Il4(J"V
I∧j.⊗YDJ:R⊗<*Iα→e1%l$J"V
I∧j.~∃DJ:R⊗<*IαY
b→2Y∩Il4(J"V
I∧*NB2M!"&:$*≡⊗I∧)%l4PH4(%%*
Iα\b~∃"LrR⊗≡-⊃α∃%Xh(%∩,∩Iα.d*Y"&u"⊗≡⊗∩αY%lhP%∩V∃⊃α.24)"&:$*≡⊗I∧)%l4Ph(%∩,∩Iα6\~>BeDJ:R⊗<*Iα KX4(%%*
Iα<bV∃"LrR⊗≡-⊃α→Ed1I%lhP%∩V∃⊃α≡2,*∃"&u"⊗≡⊗∩α→E23 2→Ie1I%lhP4(%%*
Iα≥:⊗⊗ADJ:R⊗<*Iα→d22≥%Xh(%∩,∩IαJ⎇"∞>5DJ:R⊗<*Iα→KX4(%%*
Iα¬JJε6L!"&:$*≡⊗I∧2Y%lhP4(%%*
Iα∀*6>Z2B&:R,:⊗Iα2Il4(J"V
I∧2Z∩Va"&:$*≡⊗I∧⊃%l4Ph(%∩,∩Iα6\~V
∃E∩⊗ε1∧ 2 2~Il4(J"V
I∧j.∞fdq"J⊗aαI2rbi%lhP%∩V∃⊃α6.∀
21"∀*ε1α∩b529KX4(4PI∩V
∩α
V9DJ:R⊗<*Iα
b I%Xh(%∩,∩Iα
Lq"&:$*≡⊗I∧⊃E2 ∩Il4(J"V
I∧∩NV DJ:R⊗<*Iα
b I%Xh(4(2∞>lj⊗:Q∧*bR⊗∀rε1α$*∞2ε∀
R&>u→α~>∩α∩&N∧bεeα∀zVR&t*Ml4Ph(%∩,∩Iα∩¬JN⊗QDJ:R⊗<*Iαε∃∩εeα¬"I%lhP%∩V∃⊃α∩BL∩&≥"LrR⊗≡-⊃αN&T)%l4PI∩V
∩α∩Bf∃∩Q"&u"⊗≡⊗∩αN&j*Il4(hP%∩V∃⊃αεZ,~Q"&u"⊗≡⊗∩αa2eKX4(%%*
IαJZ⊗∞"B&:R,:⊗IαBbe%lhP%∩V∃⊃αJZ,~Q"&u"⊗≡⊗∩αa2eKX4(%%*
Iα∀JZ⊗∞"B&:R,:⊗IαBbe%lhP4(%%*
Iα%αfNN"BNRJLr≥αMKX4(%%*
Iα%αf>V"B&:R,:⊗Iα∧z≥%lhP%∩V∃⊃α∩BM~RI"∀*~⊗J,r∞∃αLrR⊗≡-⊃αR⊗E!%l4Ph(%∩,∩Iα∩%J="&u"⊗≡⊗∩α
BR∩Il4(J"V
I∧z∞R∩¬I"&:$*≡⊗I¬A%l4PI∩V
∩α∩⊗∞%αe"&u"⊗≡⊗∩αa%lhP%∩V∃⊃α~2|"Be"∀*ε1αCZ&:R,:⊗Iα∧bε∞⊗~AQ%%Xh(4(2∞>lj⊗:Q∧:⊗56tz∩∃αt
6⊗M∧2>IαdJ:.M∧
:⊃α$
R¬lhP%∩V∃⊃α∞ε∩B&:R,:⊗Iα
Il4(J"V
I∧~∩I"LrR⊗≡-⊃αE%Xh(%∩,∩Iα∩M↓"&:$*≡⊗I∧
2EKX4(%%*
Iα$
A"&u"⊗≡⊗∩αε
2
Il4(hRN&6∧b∃α&u"⊗≡⊗∩αBJ>≤*∩VJ*αb↑⊃DJ:R⊗<*IαE
bEI%]~RεJ!B∞>∩*α"J2R↓E2EZ"JIβ 2EI\*:⊃lhP4*∞|j6⊗:"α↑>Jd!α2>≥*Ml4PJ∩⊗~Lr∃αb<→"Y%iα6⊗6⎇∩fnYk→2J⊗btElhP&∩⊗4J:∃αM:
"YKhB6⊗lzJfn2iI2J,
2tEXh(&∩,2&:∃¬R↑
"2ItB6,j>Jf]15E2∀*ε2tX4(&$*~&:*αε¬"2ItB6,j>Jf]15M2∀*ε2tX4(&$*~&:*α
"2ItB6,j>Jf]15I2∀*ε2tX4(&$*~&:*α∞
"2ItB6,j>Jf]15E2∀*ε2tX4(&$*~&:*α
hA≥Eβ↓AAA↓ l4(hR∞>6l*:Qα∀zRεRLz9α6
"J&aXh(&∩,2&:∃∧Ja"YKhB6⊗lzJfn2YA2J,
2tEXh(&∩,2&:∃∧Je"YKhB6⊗lzJfn2YE2J,
2tEXh(&∩,2&:∃∧Ji"YKhB6⊗lzJfn2YI2J,
2tEXh(&∩,2&:∃∧Ra"YKhB6⊗lzJfn2YM2J,
2tEXh(&∩,2&:∃∧Re"YKhB6⊗lzJfn2YQ2J,
2tEXh(&∩,2&:∃∧Ri"YKhB6⊗lzJfn2YU2J,
2tEXh(&∩,2&:∃∧Za"YKhB6⊗lzJfn2YY2J,
2tEXh(&∩,2&:∃∧Ze"YKhB6⊗lzJfn2Y]2J,
2tEXh(&∩,2&:∃∧Zi"YKhB6⊗lzJfn2Ya2J,
2tEXh(4*≤z66⊗u!αB⊗∃~B⊗∞$JZ∃6¬∩>*⊗≥"⊗⊃αdz∞VMXh(&∩,2&:∃¬BBA"2ItB6,j>Jf]1-Q2∀*ε2tX4(&$*~&:*αfBAE1%tBl*6>JMZY-Ue∩⊗ε2i l4(L"⊗~&t)αjBαBY%t∧j⊗6>∃JnY-2bJ⊗εehEl4P58&
DEFINE NFACE(Q)=⊂CAR((Q)+1)⊃; DEFINE PFACE(Q)=⊂CDR((Q)+1)⊃;
DEFINE NED(Q)=⊂CAR((Q)+2)⊃; DEFINE PED(Q)=⊂CDR((Q)+2)⊃;
DEFINE NVT(Q)=⊂CAR((Q)+3)⊃; DEFINE PVT(Q)=⊂CDR((Q)+3)⊃;
DEFINE NCW(Q)=⊂CAR((Q)+4)⊃; DEFINE PCW(Q)=⊂CDR((Q)+4)⊃;
DEFINE NCCW(Q)=⊂CAR((Q)+5)⊃; DEFINE PCCW(Q)=⊂CDR((Q)+5)⊃;
DEFINE DAD(Q)=⊂CAR((Q)+4)⊃; DEFINE SON(Q)=⊂CDR((Q)+4)⊃;
DEFINE BRO(Q)=⊂CAR((Q)+5)⊃; DEFINE SIS(Q)=⊂CDR((Q)+5)⊃;
DEFINE ALT(Q)=⊂CAR((Q)+6)⊃; DEFINE ALT2(Q)=⊂CDR((Q)+6)⊃;
DEFINE TRAM(Q)=⊂CDR(((Q))+6)⊃;
DEFINE CW(Q)=⊂CAR((Q)+7)⊃; DEFINE CCW(Q)=⊂CDR((Q)+7)⊃;
DEFINE NLINK(Q)=⊂CAR((Q)+8)⊃; DEFINE PLINK(Q)=⊂CDR((Q)+8)⊃;
DEFINE NFACE$(A,Q)=⊂DIP((A),(Q)+1)⊃; DEFINE PFACE$(A,Q)=⊂DAP((A),(Q)+1)⊃;
DEFINE NED$(A,Q)=⊂DIP((A),(Q)+2)⊃; DEFINE PED$(A,Q)=⊂DAP((A),(Q)+2)⊃;
DEFINE NVT$(A,Q)=⊂DIP((A),(Q)+3)⊃; DEFINE PVT$(A,Q)=⊂DAP((A),(Q)+3)⊃;
DEFINE NLINK$(A,Q)=⊂DIP((A),(Q)+8)⊃; DEFINE PLINK$(A,Q)=⊂DAP((A),(Q)+8)⊃;
REQUIRE UNSTACK_DELIMITERS;